package cn.tablego.project.springboot.model;

import javax.validation.constraints.NotBlank;

import com.fasterxml.jackson.annotation.JsonProperty;

import cn.tablego.project.springboot.common.model.BaseBean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * 用户(t_user)
 *
 * @author bianj
 * @version 1.0.0 2021-09-26
 */
@Setter
@Getter
@Accessors(chain = true)
@ApiModel(description = "用户")
public class User extends BaseBean {
    /** 版本号 */
    private static final long serialVersionUID = -8893602871213585193L;

    /** 创建用户实例对象 */
    public static User newInstance() {
        return new User();
    }

    /* This code was generated by TableGo tools, mark 1 begin. */

    @ApiModelProperty(value = "主键ID", position = 1)
    @JsonProperty(index = 1)
    private String id;

    @ApiModelProperty(value = "用户名", position = 2)
    @JsonProperty(index = 2)
    @NotBlank(message = "用户名不能为空！")
    private String username;

    @ApiModelProperty(value = "用户密码", position = 3)
    @JsonProperty(index = 3)
    @NotBlank(message = "用户密码不能为空！")
    private String password;

    @ApiModelProperty(value = "用户类型，字典数据，例如：系统用户、普通用户", position = 4)
    @JsonProperty(index = 4)
    @NotBlank(message = "用户类型不能为空！")
    private String userType;

    @ApiModelProperty(value = "用户姓名", position = 5)
    @JsonProperty(index = 5)
    private String fullName;

    @ApiModelProperty(value = "身份证", position = 6)
    @JsonProperty(index = 6)
    private String idCard;

    @ApiModelProperty(value = "移动电话", position = 7)
    @JsonProperty(index = 7)
    private String mobilePhone;

    @ApiModelProperty(value = "电子邮箱", position = 8)
    @JsonProperty(index = 8)
    private String email;

    @ApiModelProperty(value = "微信ID", position = 9)
    @JsonProperty(index = 9)
    private String openId;

    @ApiModelProperty(value = "租户编码", position = 10)
    @JsonProperty(index = 10)
    private String tenantCode;

    /* This code was generated by TableGo tools, mark 1 end. */
}